<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.14"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>dp: xdp_tx_example_common.c File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="HTML_custom.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="xlogo_bg.gif"/></td>
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">dp
   </div>
   <div id="projectbrief">Xilinx SDK Drivers API Documentation</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',false,false,'search.php','Search');
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('xdp__tx__example__common_8c.html','');});
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">xdp_tx_example_common.c File Reference</div>  </div>
</div><!--header-->
<div class="contents">
<a name="details" id="details"></a><h2 class="groupheader">Overview</h2>
<div class="textblock"><p>Contains a design example using the <a class="el" href="struct_x_dp.html" title="The XDp instance data. ">XDp</a> driver (operating in TX mode). </p>
<p>It performs a self test on the DisplayPort TX core by training the main link at the maximum common capabilities between the TX and RX and checking the lane status.</p>
<dl class="section note"><dt>Note</dt><dd>The DisplayPort TX core does not work alone - video/audio sources need to be set up in the system correctly, as well as setting up the output path (for example, configuring the hardware system with the DisplayPort TX core output to an FMC card with DisplayPort output capabilities. Some platform initialization will need to happen prior to calling <a class="el" href="struct_x_dp.html" title="The XDp instance data. ">XDp</a> driver functions. See XAPP1178 as a reference.</dd></dl>
<pre>
MODIFICATION HISTORY:</pre><pre>Ver   Who  Date     Changes
<hr/>

1.0   als  01/20/15 Initial creation.
5.1   ms   01/23/17 Added xil_printf statement in main function to
                    ensure that "Successfully ran" and "Failed" strings
                    are available in all examples. This is a fix for
                    CR-965028.
</pre> </div><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:aa048b03b5dc7408a4dd444f631eb6f30"><td class="memItemLeft" align="right" valign="top">u32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdp__tx__example__common_8c.html#aa048b03b5dc7408a4dd444f631eb6f30">Dptx_Run</a> (<a class="el" href="struct_x_dp.html">XDp</a> *InstancePtr)</td></tr>
<tr class="memdesc:aa048b03b5dc7408a4dd444f631eb6f30"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function will configure and establish a link with the receiver device, afterwards, a video stream will start to be sent over the main link.  <a href="#aa048b03b5dc7408a4dd444f631eb6f30">More...</a><br /></td></tr>
<tr class="separator:aa048b03b5dc7408a4dd444f631eb6f30"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7890171f707168d57a1ee86a34eede68"><td class="memItemLeft" align="right" valign="top">u32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdp__tx__example__common_8c.html#a7890171f707168d57a1ee86a34eede68">Dptx_SetupExample</a> (<a class="el" href="struct_x_dp.html">XDp</a> *InstancePtr, u16 DeviceId)</td></tr>
<tr class="memdesc:a7890171f707168d57a1ee86a34eede68"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function will setup and initialize the DisplayPort TX core.  <a href="#a7890171f707168d57a1ee86a34eede68">More...</a><br /></td></tr>
<tr class="separator:a7890171f707168d57a1ee86a34eede68"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6700facd123226784319febf7189c092"><td class="memItemLeft" align="right" valign="top">u32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdp__tx__example__common_8c.html#a6700facd123226784319febf7189c092">Dptx_StartLink</a> (<a class="el" href="struct_x_dp.html">XDp</a> *InstancePtr)</td></tr>
<tr class="memdesc:a6700facd123226784319febf7189c092"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function will configure and establish a link with the receiver device.  <a href="#a6700facd123226784319febf7189c092">More...</a><br /></td></tr>
<tr class="separator:a6700facd123226784319febf7189c092"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Function Documentation</h2>
<a id="aa048b03b5dc7408a4dd444f631eb6f30"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa048b03b5dc7408a4dd444f631eb6f30">&#9670;&nbsp;</a></span>Dptx_Run()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">u32 Dptx_Run </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_dp.html">XDp</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function will configure and establish a link with the receiver device, afterwards, a video stream will start to be sent over the main link. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>is a pointer to the <a class="el" href="struct_x_dp.html" title="The XDp instance data. ">XDp</a> instance. </td></tr>
    <tr><td class="paramname">LaneCount</td><td>is the number of lanes to use over the main link. </td></tr>
    <tr><td class="paramname">LinkRate</td><td>is the link rate to use over the main link.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if main link was successfully established.</li>
<li>XST_FAILURE otherwise.</li>
</ul>
</dd></dl>
<dl class="section note"><dt>Note</dt><dd>None. </dd></dl>

<p class="reference">References <a class="el" href="xdp__tx__example__common_8c.html#a6700facd123226784319febf7189c092">Dptx_StartLink()</a>.</p>

</div>
</div>
<a id="a7890171f707168d57a1ee86a34eede68"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7890171f707168d57a1ee86a34eede68">&#9670;&nbsp;</a></span>Dptx_SetupExample()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">u32 Dptx_SetupExample </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_dp.html">XDp</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u16&#160;</td>
          <td class="paramname"><em>DeviceId</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function will setup and initialize the DisplayPort TX core. </p>
<p>The core's configuration parameters will be retrieved based on the configuration to the DisplayPort TX core instance with the specified device ID.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>is a pointer to the <a class="el" href="struct_x_dp.html" title="The XDp instance data. ">XDp</a> instance. </td></tr>
    <tr><td class="paramname">DeviceId</td><td>is the unique device ID of the DisplayPort TX core instance.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if the device configuration was found and obtained and if the main link was successfully established.</li>
<li>XST_FAILURE otherwise.</li>
</ul>
</dd></dl>
<dl class="section note"><dt>Note</dt><dd>None. </dd></dl>

<p class="reference">References <a class="el" href="struct_x_dp___config.html#a26db9b137de6560d3b2690f0d4acaed0">XDp_Config::BaseAddr</a>, <a class="el" href="group__dp__v5__1.html#ga99e89fe4b5550c32cef410fffab99318">XDp_CfgInitialize()</a>, <a class="el" href="group__dp__v5__1.html#ga85f185599e63935fa41e46ca249d4a3a">XDp_Initialize()</a>, and <a class="el" href="group__dp__v5__1.html#ga954fb3ec10b80a366fe9eb361989cb61">XDp_LookupConfig()</a>.</p>

</div>
</div>
<a id="a6700facd123226784319febf7189c092"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6700facd123226784319febf7189c092">&#9670;&nbsp;</a></span>Dptx_StartLink()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">u32 Dptx_StartLink </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_dp.html">XDp</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function will configure and establish a link with the receiver device. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>is a pointer to the <a class="el" href="struct_x_dp.html" title="The XDp instance data. ">XDp</a> instance.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS the if main link was successfully established.</li>
<li>XST_FAILURE otherwise.</li>
</ul>
</dd></dl>
<dl class="section note"><dt>Note</dt><dd>None. </dd></dl>

<p class="reference">References <a class="el" href="struct_x_dp___tx.html#ae63e057dfdae91215b4361fe98e0600d">XDp_Tx::LinkConfig</a>, <a class="el" href="struct_x_dp___tx_link_config.html#aa7ce05bdbb77f099987f327918c92e5a">XDp_TxLinkConfig::MaxLaneCount</a>, <a class="el" href="struct_x_dp___tx_link_config.html#a1cb767e2205df48354b391fbf205fe40">XDp_TxLinkConfig::MaxLinkRate</a>, and <a class="el" href="group__dp__v5__1.html#ga831242817739efb8ec76f65b317b00c7">XDp_TxGetRxCapabilities()</a>.</p>

<p class="reference">Referenced by <a class="el" href="xdp__tx__example__common_8h.html#aa048b03b5dc7408a4dd444f631eb6f30">Dptx_Run()</a>.</p>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="footer">Copyright &copy; 2015 Xilinx Inc. All rights reserved.</li>
  </ul>
</div>
</body>
</html>
